public class Test {

    public  MyLinkNode.Node heBingLink(MyLinkNode.Node head1, MyLinkNode.Node head2){

        MyLinkNode.Node newnode=new MyLinkNode.Node(0);
        MyLinkNode.Node tmp=newnode;
        while(head1!=null&&head2!=null){
            if(head1.data<head2.data){
                tmp.next=head1;
                tmp=head1;
                head1=head1.next;
            }else{
                tmp.next=head2;
                tmp=head2;
                head2=head2.next;
            }
        }
        if(head1!=null){
            tmp.next=head1;
        }
        if(head2!=null){
            tmp.next=head2;
        }
        return newnode;
    }
    public static void main8(String[] args) {      //合并两个有序的链表，并且合并后为有序链表

        MyLinkNode myLinkNode1=new MyLinkNode();
        myLinkNode1.addLast(11);
        myLinkNode1.addLast(28);
        myLinkNode1.addLast(35);
        myLinkNode1.addLast(49);

        MyLinkNode myLinkNode2=new MyLinkNode();
        myLinkNode2.addLast(7);
        myLinkNode2.addLast(13);
        myLinkNode2.addLast(27);
        myLinkNode2.addLast(47);
        myLinkNode2.addLast(97);

         MyLinkNode myLinkNode3=new MyLinkNode();
 MyLinkNode.Node ret= myLinkNode3.heBingLink(myLinkNode1.head,myLinkNode2.head);
 myLinkNode3.display(ret.next);
    }
    public static void main(String[] args) {
        MyLinkNode myLinkNode=new MyLinkNode();
        myLinkNode.addLast(5);
        myLinkNode.addLast(4);
        myLinkNode.addLast(3);
        myLinkNode.addLast(2);
        myLinkNode.addLast(7);

       myLinkNode.display(myLinkNode.sortInList());

       // MyLinkNode.Node ret=myLinkNode.qiuDaoShu(3);//求倒数第K个节点的值，用快慢指针
       // myLinkNode.display(ret);
    }
    public static void main5(String[] args) {
        MyLinkNode myLinkNode=new MyLinkNode();
        myLinkNode.addLast(1);
        myLinkNode.addLast(2);
        myLinkNode.addLast(3);
        myLinkNode.addLast(4);
        myLinkNode.addLast(5);
        myLinkNode.addLast(6);
        MyLinkNode.Node ret= myLinkNode.findCenter();  //求中间节点
        myLinkNode.display(ret);
    }
    public static void main4(String[] args) {
        MyLinkNode myLinkNode=new MyLinkNode();
        myLinkNode.addLast(1);
        myLinkNode.addLast(2);
        myLinkNode.addLast(3);
        myLinkNode.addLast(4);
        myLinkNode.display();
        System.out.println("==================");
        MyLinkNode.Node ret= myLinkNode.reverseLink();  //反转链表
      myLinkNode.display();
    }
    public static void main3(String[] args) {
        MyLinkNode myLinkNode=new MyLinkNode();
        myLinkNode.addLast(1);
        myLinkNode.addLast(2);
        myLinkNode.addLast(3);
        myLinkNode.addLast(2);
        myLinkNode.addLast(2);
        myLinkNode.delAll(2);
        myLinkNode.display();
    }
    public static void main2(String[] args) {
        MyLinkNode myLinkNode=new MyLinkNode();
        myLinkNode.addFirst(1);
        myLinkNode.display();
        myLinkNode.delLink(1);
        myLinkNode.display();
    }
    public static void main1(String[] args) {
        MyLinkNode myLinkNode=new MyLinkNode();
        myLinkNode.creatLink();
        myLinkNode.display();
        System.out.println("============");
        myLinkNode.addFirst(7);
        myLinkNode.addFirst(9);
        myLinkNode.display();
        System.out.println("==============");
        myLinkNode.addLast(11);
        myLinkNode.addFirst(9);
        myLinkNode.display();
        System.out.println(myLinkNode.findLink(7));
        System.out.println("=================");
        myLinkNode.addIndex(2,98);
        myLinkNode.display();


    }
}
